/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package fi.uba.algo3.tp3.vista.inanimados;

import ar.uba.fi.algo3.titiritero.SuperficieDeDibujo;
import ar.uba.fi.algo3.titiritero.vista.Circulo;
import ar.uba.fi.algo3.titiritero.vista.Cuadrado;
import fi.uba.algo3.tp3.modelo.notificaciones.StateNotification;
import fi.uba.algo3.tp3.vista.Observador;
import java.awt.Color;
import java.util.LinkedList;
import java.util.List;

/**
 *
 * @author ariel
 */
public class VistaVidas extends Cuadrado implements Observador {

    private List<Circulo> vidas;
    private int index = 0;

    public VistaVidas(int ancho, int alto) {
        super(ancho, alto);
        vidas = new LinkedList<Circulo>();
    }

    public void agrearVida(Circulo circulo) {
        vidas.add(circulo);
    }

    @Override
    public void dibujar(SuperficieDeDibujo superfice) {
        //super.dibujar(superfice);
        for (Circulo circulo : vidas) {
            circulo.dibujar(superfice);
        }
    }

    @Override
    public void notificar(StateNotification notification) {
        if (notification.equals(StateNotification.MUERTO)) {
            if (index < vidas.size()) {
                vidas.get(index).setColor(Color.BLACK);
                index++;
            }
        } else if (notification.equals(StateNotification.NORMAL)) {
            if (vidas.size() > 0) {
                vidas.get(index).setColor(Color.YELLOW);
                index--;
            }
        }
    }
}
